Systems, methods, and computer readable media for determining a circuit training path in a smart gym

ABSTRACT

Techniques are provided for determining a circuit training path in a smart gym for an exerciser to perform an exercise program in order to minimize user contention for exercise equipment. The training path is defined by the exerciser visiting a number of exercise machines in the order specified by a system. The system determines a next exercise machine for the exerciser to visit which addresses the personal exercise program. In making this determination, the system communicates with all station agent nodes in the system to determine the set of station agent nodes that have an associated exercise machine which operate to address the personal exercise program. Out of that set of station agent nodes, the system reserves the next exercise machine associated with one of the set of station agent nodes that has a state value reflecting the least waiting time for the exerciser.

FIELD OF THE INVENTION

The present invention generally relates to systems, methods, and computer readable media for improving circuit training in a smart gym, and more particularly, to advantageous systems, methods, and computer program products for determining a circuit training path in a smart gym for efficient utilization of exercise equipment.

BACKGROUND OF THE INVENTION

Circuit training exercise programs typically consist of defining an ordered set of exercises performed on exercise equipment to work out particular muscles or muscle groups, each exercise having an associated duration or repetition count, and associated levels of resistance. Traditional gyms provide a limited number of stand alone pieces of exercise equipment, or stations, on which to accomplish these exercise sets. Each station can be used to perform a small set of specifically targeted exercises, for example, a tricep machine is operated by a user to exercise the user's tricep muscles, the target muscle. Since these stations can only be in active use by one individual at a time and each individual's exercise program is personal to that individual, there is often contention for pieces of exercise equipment between multiple individuals resulting in user downtime.

Lengthy downtime between performing exercises is not desirable, since maintaining an elevated heart rate is important over the course of an entire circuit. For exercises with multiple sets, there is usually some desirable downtime between sets to rest the target muscle stressed by the target machine allowing two or more users to share a station by interleaving sets during each other's downtime.

Furthermore, due to the increased demands on peoples lives, exercisers are requiring more efficient use of their limited time at the gym. At the same time, gym operators typically have limited budgets and would not typically purchase more equipment to accommodate increased usage. Additionally, spending money on equipment purchases requires more floor space in which to fit the additional equipment and increases the total maintenance cost for keeping all the equipment in working order.

There is a growing surge in smart gym technology. Smart gyms can be characterized as combining computers with exercise equipment and associating identities with exercisers. Currently, some smart gym technologies allow training programs to be associated with user identities. A user can then identify themselves to a piece of exercise equipment with a unique key, and the equipment will retrieve their desired resistances and durations, and possibly record the user's progress. Some equipment can even retrieve settings for a user from the Internet, and maintain records of that user's progress. However, the current state of smart gym technology does not address the problem of optimizing the utilization of exercise equipment by users to minimize contention for an individual piece of equipment.

SUMMARY OF THE INVENTION

Among its several aspects, the present invention recognizes that a need exists for mechanisms for optimizing the utilization of exercise equipment by users to minimize user contention for an individual piece of equipment. The present invention also recognizes that methods, systems, and computer program products are needed to provide an efficient path through an equipment circuit to an exerciser by automatically determining the next equipment station in the equipment circuit an exerciser will visit.

To this end, the present invention addresses a variety of aspects of a smart gym which may advantageously comprise a plurality of station agent nodes, a management node, and a network providing connectivity between the plurality of station agent nodes and the management node. The station agent node preferably resides on a computerized exercise station and is operable to report the status of the exercise station. The station agent node also retrieves a suggested next exercise machine in the equipment circuit for an exerciser and directs a display to inform the exerciser of the suggestion. The management node maintains and directs the operations of the smart gym. The management node is responsible for collating information from exercise stations disposed in the equipment circuit. The management node retrieves an exerciser's personal program and analyzes the collated information to direct the exerciser from station to station through the equipment circuit, resulting in a circuit training path.

A more complete understanding of the present invention, as well as further features and advantages of the invention, will be apparent from the following Detailed Description and the accompanying drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is an illustration of an exemplary smart gym in which the present invention may be suitably implemented.

FIG. 2A is a state diagram illustrating reservation states of a station agent node of FIG. 1 in accordance with the present invention.

FIG. 2B is a state diagram illustrating vacancy states of an exercise machine of FIG. 1 in accordance with the present invention.

FIG. 2C is a table illustrating the meaning for each state combination of vacancy and reservation states in accordance with the present invention.

FIG. 2D is a table illustrating an exemplary portion of a personal exercise program.

FIG. 3 is a flow diagram illustrating an exemplary message flow between a station agent and a management node of the system of FIG. 1 in accordance with the present invention.

FIG. 4 is a flow chart illustrating a method for determining a start station and a next station in accordance with the present invention.

FIG. 5 is a flow chart continuing the method of FIG. 4.

DETAILED DESCRIPTION

The present invention will now be described more fully with reference to the accompanying drawings, in which several presently preferred embodiments of the invention are shown. This invention may, however, be embodied in various forms and should not be construed as limited to the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the invention to those skilled in the art.

As will be appreciated by one of skill in the art, the present invention may be embodied as methods, systems, or computer program products. Accordingly, the present invention may take the form of a hardware embodiment, a software embodiment, or an embodiment combining software and hardware aspects. Furthermore, the present invention may take the form of a computer program product on a computer-usable storage medium having computer-usable program code embodied in the medium. Any suitable computer readable medium may be utilized including hard disks, CD-ROMs, optical storage devices, flash memories, or magnetic storage devices.

The code may execute entirely on one or more computers, or it may execute partly on a server and partly on a client within a station device or as a proxy server at an intermediate point in a communications network. Regarding the former scenario, FIG. 1 illustrates of an exemplary smart gym system 100 in which the present invention may be suitably employed. The system 100 includes a management node 110 networked over a local area network (LAN), wide area network (WAN), or other intranet 140 with a set of station agent nodes 150A-C. Alternatively, the management node 110 may be networked via a wireless LAN, WAN or other intranet network with station agent nodes 150A-C and a handheld computer 170. The management node 110 may optionally be networked with a data store 130 over Internet 120 via an Internet service provider (ISP). With data store 130, an exerciser's exercise program is retrievable by multiple smart gym sites. Otherwise, the exerciser's exercise program is stored at management node 110. Each station agent node 150A-C is associated with an exercise machine 145A-C, respectively.

Computer program code or “code” for carrying out operations according to the present invention may be written in an object oriented programming language such as C, C++, JAVA®, Smalltalk, JavaScript®, Visual Basic®, TSQL, Perl, or in various other programming languages. Software embodiments of the present invention do not depend on implementation with a particular programming language. For simplicity of discussion, the terms management node and station agent node are embodied in code for carrying out operations according to the present invention. Portions of the code may execute entirely on one or more systems utilized by an intermediary server.

In one embodiment of the present invention, a station agent node may consist entirely of program code stored within an exercise machine if the exercise machine is computerized and programmable and contains a communication interface and a display. In another embodiment of the present invention, a station agent node may consist of personal computer, workstation, or the like which is connected to an exercise machine. The term “exercise station” as used herein refers to the combination of an exercise machine and a station agent node. For example, exercise station 147 encompasses exercise equipment 145C and station agent node 150C. It should be noted that the present invention contemplates a station agent node controlling one or more exercise machines. It should also be noted that a station agent node may not be associated with any exercise machine.

The handheld computer 170, although depicted as a personal digital assistant (PDA), may also include a cell phone, a notebook computer, a pager or any other device which contains a display and communicates wirelessly. The handheld computer 170 allows an exerciser to maintain his or her own exercise log and exercise program on the handheld computer 170 itself. The handheld computer 170 communicates an exercise program directly to an exercise station through an infrared interface or through a wireless LAN 160. The handheld computer 170 also displays information generated by the management node 110 or an exercise station including a next exercise machine the exerciser will visit in the equipment circuit according to the exerciser's personal exercise program in light of the current activity at each exercise station. It is understood that for simplicity only three station agent nodes and one handheld computer are illustrated in FIG. 1, but that this representation shall not be interpreted in limiting the number of station agent nodes and optional handheld computer to those illustrated. It is understood that the present invention is not TCP/IP-specific or Internet-specific. The present invention may be embodied using various transport and data link protocols over various types of computer networks.

In operation, each station agent node receives information from its associated exercise machine and receives information either directly or indirectly from an exerciser. The exerciser may communicate a personal exercise program through his or her handheld computer 170. The personal exercise program may suitably specify an identification number for the user, the total number of sets planned to be performed on the exercise machine associated with the station agent node, the number of repetitions for each set, the resistance levels for each repetition in each set, and historical completion times for using a similar exercise machine. The personal exercise program may also specify three or more typical phases of a workout such as a warm-up phase, a regular phase, and a cool down phase. In each phase, a list of target muscles which would be the focus of a selected exercise station are specified such as biceps, triceps, upper back, lower back, shoulders, and the like. Alternatively, other items such as specific exercises, exercise equipment, target muscles, or any combination of these items may be specified in a workout phase.

The personal exercise program may alternatively be retrieved from the data store 130 by the management node 110 upon the user inputting a personal identification number at a station agent node. When an exerciser begins his or her exercise on an exercise machine, the station agent node determines that the exercise machine is occupied. During the course of exercising, the station agent node receives current status information from the exercise machine. Such status information includes an identification number for the current user, the current set the current user is performing, the current repetition being performed by the user, and the current resistance level for the current repetition being performed by the user. Additionally, regardless of the exercise machine being occupied, messages indicating the health of the exerciser and the operational status of the machine are transmitted to the station agent node. The station agent node may periodically report status information to the management node 110 or the management node 110 may periodically request status information from each station agent node.

The management node 110 maintains and directs the operations of the smart gym 100. The management node 110 collates status information received from station agent nodes 150A-C. If an exercise station is not currently being used, the associated station agent node reports that it is available. Furthermore, the management node 110 receives each user's personal exercise program from either the data store 130 or a handheld computer such as the handheld computer 170. With the management node 110 having access to each user's personal exercise program and the current status of each exercise station, the present invention determines both a first exercise station and a next exercise station which an exerciser should visit in pursuing his or her workout. This determination results in a personal path through the equipment circuit and it is more fully described in connection with the discussion of FIG. 4 below. It should be noted that the calculated personal path is dynamic in nature and it may change during the course of an exerciser traveling through the equipment circuit. The changes depend on many factors, for example, the number of new exercisers entering an equipment circuit, exercisers leaving the equipment circuit before completion, and the like. Consequently, the next equipment station for an exerciser to visit is preferably determined and displayed to the exerciser. Alternatively, another embodiment of the present invention would include determining an entire path at the beginning of a workout and making modifications to the path during the course of the exerciser's workout, if necessary.

An exerciser about to begin an exercise circuit may approach an available exercise station or a separate station agent node embodied in a networked computer which is not associated with an exercise machine. As described above, the exerciser will be informed of his or her next exercise station of the equipment circuit through either the display associated with a station node or the exerciser's handheld computer. Alternatively, output to an exerciser may be done through a display on the exercise machine. The management node 110 considers the dynamic change in status of each exercise station when calculating the next equipment station to be visited by an exerciser.

FIG. 2A is a state diagram 200 illustrating reservation states of a station agent node of FIG. 1 in accordance with the present invention. A station agent node, such as station agent node 150A, may be in either a reserved state 205 or an unreserved state 210. A station agent node transitions between states over transition 212 and transition 214. Transition 212 represents one or more activities the occurrence of which would result in a station agent node transitioning from the unreserved state 210 to the reserved state 205. Transition 214 represents one or more activities the occurrence of which would result in a station agent node transitioning from the reserved state 205 to the unreserved state 210. These activities are more fully described in connection with the discussion of FIG. 5 below. One example of an activity which would cause a station agent node to transition from the reserved state 205 to the unreserved state 210 is when an exerciser is exercising on a first exercise machine and during the exerciser's exercise on the first exercise machine, the present invention determines the next station agent node for the exerciser and reserves the corresponding second exercise machine associated with the next station agent node for that exerciser. It should be noted that multiple exercisers may reserve the same next station node in a queue.

FIG. 2B is a state diagram 220 illustrating vacancy states of an exercise machine of FIG. 1 in accordance with the present invention. An exercise machine, such as exercise machine 145A, may be in either an occupied state 225 or an available state 230. Transition 232 represents the occurrence of an exerciser beginning his or her work out on the exercise machine which results in transitioning the vacancy state from the available state 230 to the occupied state 225. Transition 234 represents the occurrence of an exerciser ending his or her workout on the exercise machine which results in transitioning the vacancy state from the occupied state 225 to the available state 230. These state models may be maintained in either each station agent node or in the management node 110, or in any combination of such nodes. However, it is preferable to maintain both state models in the management node 110.

FIG. 2C is a table 240 illustrating the meaning for each state combination of vacancy and reservation states in accordance with the present invention. For example, referring to row 450, when an exercise machine is occupied as shown in column 445 and corresponding station agent node has been reserved as shown in column 455, this state combination means that the exercise station is currently in use and another exerciser awaits the availability of the exercise station upon completion of the exercise of the current exerciser.

FIG. 2D is a table 260 illustrating an exemplary portion of a personal exercise program. Referring to column 265 of the illustrated portion of the personal exercise program, an exerciser's workout is divided into multiple stages including a warm up stage, a steady state stage, and a cool down stage. In each stage, a list of target muscles, for example, is assigned for the exerciser to target when utilizing one or more exercise machines. The present invention uses the list of target muscles in determining the next station for the exerciser to visit which is more fully described in connection with the discussion of FIG. 4.

FIG. 3 is a flow diagram 300 illustrating an exemplary message flow between station agent nodes and a management node of the smart gym system 100 of FIG. 1 in accordance with the present invention. The flow diagram 300 includes an exerciser 310, a station agent node 320, a management node 330, a next station agent node 340 for the exerciser, and reference 350 refers to all station agent nodes except for station agent node 320.

For the following example depicted in flow diagram 300, the first exercise machine to which the exerciser will visit for the start of his or her work out corresponds to station agent node 320. Station agent node 320 has been previously reserved by the exerciser. Station agent node 320 may suitably be similar to station agent node 150A of FIG. 1 and its corresponding exercise machine may suitably be similar to exercise machine 145A. The determination on which exercise station to begin a work out is more fully described in connection with the discussion of FIG. 4.

At time t₀, the exerciser inputs his or her user identification (id) 305 to a station node 320. The exerciser may input the user id through various means including entering the user id utilizing an interface provided at an exercise station or by wirelessly communicating the user id from or with a handheld computer such as handheld computer 170. It should be noted that the communication between the input/output 310 and the station agent node 320 is performed through known display devices and known input and output techniques. The station agent node 320 removes the reservation associated with the exerciser and may optionally inform the management node 330 by sending message 307 indicating the removal of the exerciser's reservation. The station agent node 320 also sends a message 309 to indicate that the station is now occupied by the exerciser. The station agent node 320 also sends a message 311 to retrieve the exercise parameters for the exercise machine. It should be noted that message 309 may alternatively be sent after response 313 when the exerciser actually begins working out on the exercise machine. In response to message 311, the management node sends exercise parameters associated with an exercise specific personal program for the exercise machine such as the weight settings, the number of sets, the number of repetitions for each set, and the like. The communication between the station agent node and exercise machine is not shown, but may occur in a known manner. Upon receiving the exercise parameters, the station agent node 320 communicates an indication 315 to the exerciser to begin executing the exercise set. The station agent node 320 may operate to display messages to the exerciser through a display connected to the computer upon which the station agent node runs or may communicate with the exercise machine causing it to display messages on a display integrated with the exercise machine.

During the exerciser's work out on the exercise machine, the station agent node 320 sends a message 317 to request that the management node to reserve the next station agent node on behalf of the exerciser. By analyzing the exerciser's personal program and the states of the station agent nodes, the management node 330 determines the next station. In the embodiment depicted in the example illustrated in FIG. 3, the management node 330 queries the collection of station agent nodes 350 by sending a message 319 to each station agent node in the collection to request whether a station supports a particular exercise in the personal program and also requests the station's vacancy and reservation states. More detail of aspects of how to determine which particular exercise to support, which station agent nodes to poll and when to poll them is provided below in connection with the discussion of FIG. 4.

Each polled station agent node responds to the management node indicating whether it supports the particular exercise. The management node 330 finds the next station agent node based on anlalyzing the reply messages 321 received from the collection of station agent nodes. Preferably, the management node will find a next agent station node which is available and unreserved. Since the state of the next station agent node is dependent on factors such as the number of exercisers working out, the next agent station may not be available and unreserved. In that case, the management node would attempt to find a station agent node which is occupied but unreserved. If there are no station agent nodes which satisfy the target muscle and have the occupied and unreserved states, the management node would select a station agent node that is occupied and reserved as the next station agent node. In this case, the management node would make an additional reservation for the next station agent node.

Upon finding the next station agent node, the management node 330 issues a message 323 to the next station agent node 340 to mark the next station agent node 340 as being reserved. If the next station agent node 340 has already been previously reserved, the marked reservation is made to a reservation queue in the next station agent node 340. The next station agent node 340 acknowledges the management node 330 with a reservation received message 325. The management node 330 communicates to the station agent node 320 by sending a message 327. In message 327, the next station and any additional exercise instructions are communicated to the station agent node 320. Station agent node 320 communicates the next station to visit to the exerciser and any additional instructions through input/output 310, if necessary. For example, if the exerciser 310 is queued in a reservation queue at the next station agent node 340, any waiting time which would typically be calculated at the management node is communicated to the exerciser through input/output 310 to provide him or her an estimated time before approaching the next station. Additionally, non-equipment exercises which address the target muscles may be suggested to the exerciser to occupy the exerciser's waiting time.

It should be noted that the present invention contemplates that different messages and orders of messages than those depicted in FIG. 3 may be employed without affecting the scope of the present invention. It should also be noted that messages may be combined in multiple combinations and broken up into numerous individual messages different from those depicted in FIG. 3 without affecting the scope of the present invention.

FIG. 4 is a flow chart illustrating a method 400 for determining either a start station and a next station in accordance with the present invention. Before method 400 begins, an exerciser intends to begin a work out. At step 410, the method retrieves the first stage from a personal program such as the warm up stage illustrated in FIG. 2D. Method 400 may be iterated over multiple times when finding all station agent nodes which define a circuit training path. For the first iteration of the method 400 the first stage is also referred to as the current stage in the method steps. Associated with the first stage retrieved is a set of target muscles, for example. Since the method is about to proceed to its first iteration of exercises for the set of muscles, none of the muscles in the list have been exercised yet during this workout. Proceeding to step 420, the method retrieves the first muscle from the set of target muscles. In this first iteration, the first muscle may suitably be the biceps illustrated in FIG. 2D. At step 430, the method determines if there is an available and unreserved equipment station which focuses on the biceps. If such a station is available, in step 440, the found station is marked as reserved and the exerciser is notified through a display. If the found station will be the first station visited by the exerciser, in step 440, the exerciser would be notified to begin his or her work out immediately at the found station, ending this iteration of the method. At step 442, the method 400 would then proceed to the beginning state after a predetermined amount of time once the exerciser began exercising on the current exercise machine to find the next station agent node.

Returning to step 430, if there are no available and unreserved equipment stations, the method proceeds to step 435. At step 435, the method determines if there is another muscle in the current stage that could be addressed by an available and unreserved station. If there is another muscle in the current stage, the method proceeds to step 425. At step 425, the method 400 retrieves the next muscle in the set of muscles in the current stage and proceeds to step 430. Returning to step 435, if there is no other muscle in the current stage, the method 400 proceeds to step 445 because there are no equipment stations which are available and unreserved for any of the muscles in the current stage. Consequently, the method will search for unavailable equipment stations which are unreserved and address the target muscles in the current stage. Step 445 retrieves the first muscle from a set of muscles in the stage to find a station which is occupied but unreserved. It should be noted that the method 400 may look for exercise equipment which focus on one more target muscles. Proceeding to step 450, the method 400 determines if there is an occupied and unreserved station which exercises the target muscle by looking at the response messages 3231 received by the management node 330, for example. If there is such a station, step 455 determines if there are multiple unreserved stations found. If there are multiple unreserved stations, step 460 selects the equipment station that will become available the soonest, marks that equipment station as reserved, and notifies the exerciser how long to expect to wait for the equipment station, ending this iteration of the method.

Returning to step 455, if there are not multiple unreserved and occupied equipment stations, the method proceeds to step 475 which marks the single found station as reserved and notifies the exerciser how long to expect to wait for the equipment station, ending this iteration of the method. At the end of either steps 475 or 460, the method proceeds to step 442.

Returning to step 450, if there are no unreserved stations which exercise the target muscle, the method 400 proceeds to step 470. At step 470, the method 400 determines if there is another target muscle in the current stage. If there is such a muscle, the method 400 proceeds to step 465 to retrieve the next target muscle in the set of muscles in the current stage and continues to step 450. Returning to step 470, if there are no more muscles in the current stage being analyzed, the method 400 proceeds to step 505 in FIG. 5.

Up to step 505, the method 400 has so far not found an equipment station which is either available or unreserved and occupied. In other words, all the equipment stations needed by the exerciser according to his or her exercise program are occupied and reserved. Method steps 505, 530, 535, and 540 attempt to find the best equipment station to enque an additional reservation to an equipment station which is currently occupied and reserved.

At step 505, the method 400 retrieves the first muscle from a set of muscles in the current stage and proceeds to step 530. At step 530, the method 400 determines if there are multiple reserved equipment stations. If there are multiple reserved stations found, the method 400 proceeds to step 535 where it selects the soonest available equipment station, enques an extra reservation at that equipment station, and notifies the exerciser to wait a predetermined time before going to the soonest available station. This iteration of the method ends. The method 400 then proceeds to step 442 which returns to the beginning of the method to find a next station after a predetermined time.

Returning to step 530, if there is only one reserved equipment station which is found, the method proceeds to step 540. At step 540, the method 400 enques an extra reservation to the found equipment station and notifies the exerciser to wait a predetermined time before going to the found station, ending this iteration of the method. The present invention may suggest non-equipment oriented exercises for the exerciser to do during the waiting period before the next station node becomes available. The method proceeds to step 442 which returns to the beginning of the method to find the next station after a predetermined time.

Although the examples depicted above specify target muscles to be associated with a stage of a personal exercise program, other items such as specific exercises, exercise equipment, target muscles, exercise classifications such as aerobic and anaerobic or any combination of these items may be specified as a personal criteria in a particular workout stage. For example, a warm up stage of a personal exercise program may include an aerobic classification. An elliptical machine would be a possible exercise machine that may be suitably associated with the next station agent node when matching the aerobic classification in the personal exercise program.

While the present invention has been disclosed in the context of various aspects of presently preferred embodiments, it will be recognized that the invention may be suitably applied to other environments consistent with the claims which follow. Such environments include health spas, rehabilitation hospitals, physical therapy gyms, and any other suitable environment where exercise equipment is used by a number of exercisers. 

1. A system for determining a circuit training path in a smart gym for an exerciser to perform an exercise program, the system comprising: a network; a plurality of station agent nodes; and a management node for determining a next exercise machine for the exerciser to perform an exercise, the management node receiving a personal exercise program on behalf of the exerciser, the management node determining a portion of the plurality of station agent nodes having an associated exercise machine that operates to address the personal exercise program, each of the portion of the plurality of station agent nodes having a state, each of the portion of the plurality of station agent nodes communicating their state to the management node over the network, the management node reserving the next exercise machine from the portion of the plurality of station agent nodes having a state value reflecting the least waiting time for the exerciser.
 2. The system of claim 1 wherein the management node receives the personal exercise program from a networked data store.
 3. The system of claim 1 wherein the management node receives the personal exercise program from a handheld computer.
 4. The system of claim 1 wherein the state of a station agent node includes a vacancy state.
 5. The system of claim 1 wherein the personal exercise program comprises a workout stage having a plurality of target muscles.
 6. The system of claim 1 wherein the personal exercise program comprises a workout stage having a plurality of exercises.
 7. The system of claim 1 wherein the personal exercise program comprises a workout stage having a plurality of exercise machines.
 8. The system of claim 1 wherein the management node calculates a waiting time for the exerciser to wait before visiting the next station agent node.
 9. The system of claim 4 wherein the state of a station agent node includes a reservation state.
 10. The system of claim 9 wherein the management node attempts to find all the available and unreserved station agent nodes when determining a portion of the plurality of station agent nodes which have an associated exercise machine that operates to exercise one of the plurality of target muscles.
 11. A method for determining a training path in a smart gym for an exerciser to perform an exercise program, the method comprising: retrieving a personal exercise program on behalf of the exerciser; determining a portion of a plurality of station agent nodes having an associated exercise machine that operate to address the personal exercise program; evaluating the state of the portion of the plurality of station agent nodes; and reserving a next exercise machine associated with one of the portion of the plurality of station agent nodes having a state value reflecting the least waiting time for the exerciser.
 12. The method of claim 11 wherein the personal exercise program is retrieved from a data store.
 13. The method of claim 11 wherein the personal exercise program is retrieved from a handheld computer.
 14. The method of claim 11 wherein the state value indicates a station agent node's vacancy state.
 15. The method of claim 11 wherein the personal exercise program includes a workout stage having a plurality of target muscles.
 16. The method of claim 11 wherein the personal exercise program includes a workout stage having a plurality of exercises.
 17. The method of claim 11 wherein the personal exercise program includes a workout stage having a plurality of exercise machines.
 18. The method of claim 11 wherein the reserving step further comprises calculating a waiting time for the exerciser to wait before visiting the next station agent node.
 19. The method of claim 11 further comprising communicating to the exerciser that the reserved machine is the next exercise machine for the exerciser to visit.
 20. The method of claim 14 wherein the state value indicates a station agent node's reservation state.
 21. The method of claim 20 wherein the vacancy state includes at least an available condition, wherein the reservation state includes at least an unreserved condition, wherein the determining step further includes finding all the available and unreserved station agent nodes.
 22. A computer readable medium whose contents cause a computer system to determine a circuit training path in a smart gym for an exerciser to perform an exercise program, the computer system performing the steps of: retrieving a personal exercise program on behalf of the exerciser; determining a portion of a plurality of station agent nodes having an associated exercise machine that operate to address the personal exercise program; evaluating the state of the portion of the plurality of station agent nodes; and reserving a next exercise machine associated with one of the portion of the plurality of station agent nodes having a state value reflecting the least waiting time for the exerciser.
 23. The computer readable medium of claim 22 wherein the personal exercise program is retrieved from a data store.
 24. The computer readable medium of claim 22 wherein the personal exercise program is retrieved from a handheld computer.
 25. The computer readable medium of claim 22 wherein the state value indicates a station agent node's vacancy state.
 26. The computer readable medium of claim 22 wherein the personal exercise program includes a workout stage having a plurality of target muscles.
 27. The computer readable medium of claim 22 wherein the personal exercise program includes a workout stage having a plurality of exercises.
 28. The computer readable medium of claim 22 wherein the personal exercise program includes a workout stage having a plurality of exercise machines.
 29. The computer readable medium of claim 22 wherein the reserving step further comprises calculating a waiting time for the exerciser to wait before visiting the next station agent node.
 30. The computer readable medium of claim 22 further comprising communicating to the exerciser that the reserved machine is the next exercise machine for the exerciser to visit.
 31. The computer readable medium of claim 25 wherein the state value indicates a station agent node's reservation state.
 32. The computer readable medium of claim 31 wherein the vacancy state includes at least an available condition, wherein the reservation state includes at least an unreserved condition, wherein the determining step further includes finding all the available and unreserved station agent nodes. 